/* 
 * File:   dirOperations.h
 * Author: PprrATeekK
 *
 * Created on October 22, 2012, 5:24 PM
 */

#include "naryTree.h"


/*/////////////////////////////////////////////////////////////////////////////
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~//Constants//~~~~~~~~~~~~~~~~~~~~~~~~~~~
////////////////////////////////////////////////////////////////////////////*/

#define makedir_SUCCESS 0
#define makedir_FAILURE 1
#define deletedir_SUCCESS 0
#define deletedir_FAILURE 1
#define movedir_SUCCESS 0
#define movedir_FAILURE 1
#define listdir_SUCCESS 0
#define listdir_FAILURE 1



/*/////////////////////////////////////////////////////////////////////////////
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~//Function Prototypes//~~~~~~~~~~~~~~~~~~~~~~~~~~~
////////////////////////////////////////////////////////////////////////////*/

int makeDir(char *parentPath, char* dirName);
int deleteDir(char *pathOfDirToDelete);
int listDir(char* pathOfCurDir, int isRecursiveSearchRequested, char *pathOfOutputFile);
int moveDir(char* sourceDirPath, char* destDirPath);
int truncate(directory *nodeToTruncate);

//Function to output the traversal to file//
void structuredListFiles(FILE * ptr, directory * startNode);

